package com.dtease.agent.biz.ai.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dtease.agent.biz.ai.dto.BasChatHistoryPageDTO;
import com.dtease.agent.biz.ai.entity.BasChatHistories;
import com.dtease.agent.biz.ai.mapper.BasChatHistoriesMapper;
import com.dtease.agent.biz.ai.service.IBasChatHistoriesService;
import com.dtease.agent.biz.ai.vo.BasChatHistoryPageVO;
import org.springframework.stereotype.Service;
import reactor.core.publisher.Mono;

import java.util.List;

/**
 * <p>
 * AI聊天会话记录表，存储用户与AI的对话记录及上下文信息 服务实现类
 * </p>
 *
 * @author chentl
 * @since 2025-05-12
 */
@Service
public class BasChatHistoriesServiceImpl extends ServiceImpl<BasChatHistoriesMapper, BasChatHistories> implements IBasChatHistoriesService {

    @Override
    public Mono<IPage<BasChatHistoryPageVO>> getMyHistory(BasChatHistoryPageDTO pageDTO) {
        // 分页查询
        IPage<BasChatHistoryPageVO> page = new Page<>(pageDTO.getCurrentPage(), pageDTO.getPageSize());
        IPage<BasChatHistoryPageVO> resultPage = baseMapper.getMyHistory(page, pageDTO);

        // 调用Mapper方法进行查询
        return Mono.fromCallable(() -> resultPage);
    }


}
